/**
 * 
 * gislin
 * 2015年12月22日
 */
package com.szholly.pro.watergas_server.common.data;

import java.util.Calendar;
import java.util.Date;

/**
 * 缓存类
 * @author gislin
 * 2015年12月22日
 */
public class DataCache {
	
	/**
	 * 缓存数据
	 */
	Object cache;
	
	/**
	 * 缓存创建时间
	 */
	Date createTime;
	
	/**
	 * 过期时间
	 */
	Date expireTime;
	
	/**
	 * 缓存key
	 */
	String key;
	
	public DataCache(){
		setCreateTime(new Date());
	}

	public Object getCache() {
		return cache;
	}

	public void setCache(Object cache) {
		this.cache = cache;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Date getExpireTime() {
		return expireTime;
	}

	public void setExpireTime(Date expireTime) {
		this.expireTime = expireTime;
	}
	
	public String getKey() {
		return key;
	}

	public void setKey(String key) {
		this.key = key;
	}	
	
	/**
	 * 设置过期时间，单位为秒
	 * gislin
	 * 2015年12月22日
	 * @param expireSeconds
	 */
	public void setExpireSeconds(int expireSeconds){
		Calendar cal = Calendar.getInstance();
		cal.setTime(getCreateTime());
		cal.add(Calendar.SECOND, expireSeconds);
		setExpireTime(cal.getTime());
	}
	
	/**
	 * 缓存是否过期
	 * gislin
	 * 2015年12月22日
	 * @return
	 */
	public boolean isExpired(){
		Date now = new Date();
		boolean isExpired = now.after(expireTime);
		return isExpired;
	}
}
